package com.wuwei.tms.utils.token;

import org.springframework.stereotype.Component;

import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;

/**
 * token的缓存存储类
 * token是存储在服务器的内存中的，当用户登录以后，会把token存储起来
 * 当用户退出登录的时候，也会从内存中去除token
 * 服务器会拦截用户的请求，并验证请求头中携带的token和内存中的token是否匹配
 */
@Component
public class TokenCache {
    private static final Map<Long, String> tokenMap = new ConcurrentHashMap<>();

    public static void putToken(Long empno, String token) {
        tokenMap.put(empno, token);
    }

    public static String getToken(Long empno) {
        return tokenMap.get(empno);
    }

    public static void removeToken(Long empno) {
        tokenMap.remove(empno);
    }
}
